home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / doorware / kspftp30.zip / KSP-FTP.DOC < prev    next >
Text File  |  1996-09-01  |  68KB  |  1,975 lines

  1.  
  2.  
  3.         
  4.  
  5.  
  6.                                   KSP FTP (tm)
  7.  
  8.                       A FTP Door for Bulletin Board Systems
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.                                    Version 3.0
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.                               Copyright (C) 1995-96
  31.                                All Rights Reserved
  32.  
  33.  
  34.                                        by
  35.  
  36.  
  37.                               KEY SOFTWARE PRODUCTS
  38.  
  39.                                 40 Atherton Court
  40.                          Redwood City, California 94061
  41.                               BBS/FAX: 415-364-9847
  42.  
  43.  
  44.  
  45.                 KSP FTP is a trademark of Key Software Products.
  46.                  PCL4C is a trademark of MarshallSoft Computing.
  47.                      WATTCP is a trademark of Erick Engelke.
  48.                      Power C is a trademark of Mix Software.
  49.                    Lantastic is a trademark of Artisoft, Inc.
  50.                       Novell is a trademark of Novell Corp.
  51.                    Banyan Vines is a trademark of Banyan Inc.
  52.              DESQview is a trademark of Quarterdeck Office Systems.
  53.  
  54.  
  55.  
  56.  
  57.  
  58.         
  59.  
  60.  
  61.                                 TABLE OF CONTENTS
  62.  
  63.  
  64.  
  65.         CHAPTER 1 - INTRODUCTION        ...........................    1
  66.            1.1  Compatibility with BBS Software     ...............    1
  67.            1.2  Hardware Requirements       .......................    2
  68.            1.3  Software Requirements       .......................    2
  69.            1.4  Other KSP Software      ...........................    2
  70.               1.4.1  KSP Telnet       .............................    3
  71.               1.4.2  KSP SLIP       ...............................    3
  72.               1.4.3  KSP Mail       ...............................    3
  73.               1.4.4  KSP HOST       ...............................    3
  74.               1.4.5  So Many CD's      ............................    3
  75.  
  76.         CHAPTER 2 - INSTALLATION        ...........................    4
  77.            2.1  Packet Driver Shims for Novell    .................    4
  78.            2.2  Packet Driver Shim for Novell w/Token-RingSNAP   ..    5
  79.            2.3  Packet Driver Shims for Lantastic    ..............    5
  80.               2.3.1  Changes to CONFIG.SYS      ...................    5
  81.               2.3.2  Changes to PROTOCOL.INI      .................    6
  82.            2.4  Packet Driver Shims for Banyan Vines   ............    7
  83.            2.5  Other Things to Configure     .....................    7
  84.  
  85.         CHAPTER 3 - THE WATTCP CONFIGURATION FILE     .............    8
  86.            3.1  Multiple Nodes and the "include" Directive   ......    9
  87.            3.2  Using a BOOTP Server     ..........................    9
  88.            3.3  Manual Configuration       ........................    9
  89.               3.3.1  The PC's Host Name     .......................   10
  90.               3.3.2  The PC's Domain Name     .....................   10
  91.               3.3.3  The PC's IP Address     ......................   10
  92.               3.3.4  The Name Server's IP Address    ..............   11
  93.               3.3.5  The Router's IP Address     ..................   11
  94.               3.3.6  The PC's Network Mask     ....................   11
  95.            3.4  TCP/IP Parameters (optional)      .................   11
  96.               3.4.1  DNS Search Mode      .........................   12
  97.               3.4.2  Timeouts        ..............................   13
  98.               3.4.3  Maximum Segment Size (MSS)     ...............   13
  99.            3.5  FTP Operating Parameters      .....................   13
  100.               3.5.1  Dynamic Parameters       .....................   14
  101.               3.5.2  Retrieving Hostname of Remote Server    ......   14
  102.               3.5.3  Blocking Access to Certain Sites    ..........   15
  103.               3.5.4  Allowing Access to a Limited Set of Sites ....   15
  104.               3.5.5  Session Time Limit      ......................   15
  105.               3.5.6  Session Reserve Time      ....................   15
  106.               3.5.7  Inactivity Limit       .......................   16
  107.               3.5.8  Minimum Baud Rate      .......................   16
  108.               3.5.9  Operating Hours       ........................   16
  109.               3.5.10  User Session Logging      ...................   17
  110.               3.5.11  Non-Standard Port/Fossil Break Detect     ...   17
  111.               3.5.12  Adding External Protocols      ..............   17
  112.               3.5.13  Controlling Disk Space Usage     ............   19
  113.  
  114.  
  115.  
  116.         
  117.  
  118.  
  119.                                 TABLE OF CONTENTS
  120.  
  121.  
  122.               3.5.14  Limiting User Download Bytes     ............   19
  123.               3.5.15  Updating BBS Download Bytes     .............   20
  124.               3.5.16  Silencing the BBS console bell    ...........   20
  125.               3.5.17  Disabling the Local Screen     ..............   20
  126.  
  127.         CHAPTER 4 - INSTALLING THE FTP DOOR COMMAND    ............   22
  128.            4.1  Command Line Parameters      ......................   22
  129.               4.1.1  The /SCRIPT Parameter      ...................   23
  130.               4.1.2  The /MAXMINS Parameter      ..................   23
  131.               4.1.3  The /CONFIG Parameter      ...................   23
  132.  
  133.         CHAPTER 5 - INSTALLING YOUR ACCESS KEY     ................   25
  134.  
  135.         CHAPTER 6 - SELECTING A SERIAL COMMUNICATION PROTOCOL    ..   26
  136.            6.1  Internal Protocols       ..........................   26
  137.               6.1.1  Internal Xmodem and Ymodem Protocols    ......   26
  138.               6.1.2  Internal 1K-Xmodem/G and Ymodem/G Protocols      26
  139.               6.1.3  Internal Zmodem Protocol      ................   27
  140.            6.2  External Protocols       ..........................   27
  141.            6.3  Recommendations        ............................   27
  142.  
  143.         APPENDIX 1 - HOW TO REACH US     ..........................   29
  144.  
  145.         APPENDIX 2 - GETTING UPDATES VIA THE INTERNET    ..........   30
  146.  
  147.         APPENDIX 3 - LEGAL STUFF       ............................   31
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.         
  175.  
  176.  
  177.  
  178.         Sep 01, 1996            KSP FTP (tm) v3.0                       1
  179.  
  180.  
  181.                         CHAPTER 1 - INTRODUCTION        
  182.  
  183.  
  184.         KSP  FTP  is  a  BBS door that implements the familiar FTP client
  185.         program  that  allows  users  to  transfer  files  to/from remote
  186.         computers  over  a  TCP/IP  network.  If your BBS is connected to
  187.         the  Internet,  KSP  FTP  lets your BBS callers transfer files to
  188.         and  from remote host machines anywhere in the world for the cost
  189.         of a phone call to your BBS! 
  190.  
  191.         During  file  transfers, data between the BBS and the remote host
  192.         is  transmitted using the TCP/IP protocol, while data between the
  193.         BBS  and  the  user  is  transmitted using a serial communication
  194.         protocol  such  as X/Y/Zmodem.  Both internal and external serial
  195.         communications   protocols   are  supported;  internal  protocols
  196.         include  Xmodem-Cksm, Xmodem-CRC, 1K-Xmodem, 1K-Xmodem/G, Ymodem,
  197.         Ymodem/G, and Zmodem.  
  198.  
  199.         KSP FTP meets the following BBS-specific needs: 
  200.  
  201.              1.  Terminates  the  BBS session when user's time limit
  202.                      expires.  
  203.              2.  Terminates the BBS session when user hangs up.  
  204.              3.  Terminates   when   there's   no   activity  for  a
  205.                      sysop-specified period of time.  
  206.              4.  Records the FTP session in a log file.  
  207.              5.  Provide  colorized  or  parameterized  messages  to
  208.                      user.  
  209.              6.  Restrict users by baud rate.  
  210.              7.  Restrict hours of operation.  
  211.  
  212.         KSP   FTP   is   shareware.   The  unlicensed  version  is  fully
  213.         functional  except  that it imposes a maximum of five minutes per
  214.         FTP  session.   Once  licensed,  the  user is limited only by the
  215.         amount of time remaining in his BBS session.  
  216.  
  217.         KSP  FTP  was  implemented  using  Erick  Engelke's  Waterloo TCP
  218.         library,  MarshallSoft  Computing's PCL4C Personal Communications
  219.         library  and  PPL4C Personal Protocol Library, and Mix Software's
  220.         Power C compiler.  
  221.  
  222.  
  223.         1.1 Compatibility with BBS Software      
  224.  
  225.         KSP  FTP  is compatible with any BBS software that can generate a
  226.         DOOR.SYS  file.   It  works  with  a  BBS  configured  to use the
  227.         standard  COM1  through  COM4 ports, or will automatically detect
  228.         and use a Fossil driver.  
  229.  
  230.  
  231.  
  232.  
  233.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  234.  
  235.  
  236.         Sep 01, 1996            KSP FTP (tm) v3.0                       2
  237.  
  238.  
  239.  
  240.         1.2 Hardware Requirements        
  241.  
  242.         KSP  FTP  inherently  requires  that  the  PC  running  your  BBS
  243.         software  have  a  physical  connection  to  a  TCP/IP  network -
  244.         normally  the  Internet.  Ideally, this connection is by means of
  245.         an  adapter  card  connected  to  an  Ethernet at your company or
  246.         school (and then through a "gateway" to the Internet).  
  247.  
  248.         It  is  also  possible  to  connect  to  the  Internet  through a
  249.         commercial  Internet  Access  Provier  via  a dial-up FTP (Serial
  250.         Line  Internet  Protocol)  connection.   This approach requires a
  251.         second  serial  port, modem, and telephone line dedicated to this
  252.         purpose.   Information on finding such a provider is available on
  253.         the KSP BBS.  
  254.  
  255.  
  256.         1.3 Software Requirements        
  257.  
  258.         KSP  FTP  runs  on  top  of  another  piece  of software called a
  259.         "packet  driver".  The packet driver presents a standard software
  260.         interface  to  KSP  FTP,  regardless  of  the  type  of  hardware
  261.         interface  that  connects  the  PC to the network.  Public domain
  262.         packet  drivers  exist  for  SLIP and PPP links and most Ethernet
  263.         cards.  
  264.  
  265.         If  your  BBS  uses  a  multi-tasking  operating  system  to  run
  266.         multiple  nodes  on  a  single  PC,  then you will need a "packet
  267.         multiplexer".   A  packet  multiplexer  designed specifically for
  268.         use   with   KSP  network  products  running  under  DESQview  is
  269.         available  as  a  freeware  package  distributed  as KSPMUX*.ZIP,
  270.         where  the  "*"  is  the  version  number.   KSP  FTP is DESQview
  271.         "aware"   to   provide   better  performance  in  a  multitasking
  272.         environment.  
  273.  
  274.         If  your  PC  is  connected  to  a non-TCP/IP proprietary network
  275.         (such  as  Novell  or Lantastic), you will probably need a packet
  276.         driver "shim".  
  277.  
  278.         KSP  FTP  does  NOT  require  that you purchase a separate TCP/IP
  279.         package,  such as that sold by Novell, Artisoft, or IBM.  KSP FTP
  280.         should happily coexist with any of these packages, however.  
  281.  
  282.         An  assortment of public domain packet drivers, multiplexers, and
  283.         shims are available on the KSP BBS.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  292.  
  293.  
  294.         Sep 01, 1996            KSP FTP (tm) v3.0                       3
  295.  
  296.  
  297.         1.4 Other KSP Software       
  298.  
  299.         Key  Software  Products  offers  a  number  of other products for
  300.         BBS's: 
  301.  
  302.  
  303.         1.4.1 KSP Telnet        
  304.  
  305.         A   door  program  that  allows  callers  to  connect  to  remote
  306.         computers  anywhere  on the Internet via your BBS.  Available now
  307.         on our BBS.  
  308.  
  309.  
  310.         1.4.2 KSP SLIP        
  311.  
  312.         A  door  program  that  allows callers to run any TCP/IP software
  313.         from  home,  including using Mosaic to browse the World Wide Web.
  314.         Available now on our BBS.  
  315.  
  316.  
  317.         1.4.3 KSP Mail        
  318.  
  319.         A  Multi-Threaded  Server  for  SMTP  Mail  and NNTP Usenet news.
  320.         Replaces  UUCP,  its  monthly  fees,  and slow transfer rates! No
  321.         more  unwanted  newsgroups!  Instant  mail  without  waiting  for
  322.         scheduled  events!   Works  with  any BBS software that presently
  323.         uses  UUCP.   Requires a 24hr TCP/IP Internet connection. Can now
  324.         receive NNTP news feeds! 
  325.  
  326.  
  327.         1.4.4 KSP HOST        
  328.  
  329.         An  inbound  Telnet  server  for  MS/DOS  Bulletin Board Systems.
  330.         Every  node  can  answer both telnet and modem calls!  Requires a
  331.         fossil  driver  on  each node, a 24 hour TCP/IP connection to the
  332.         Internet,  and a local area network that supports NetBios such as
  333.         Novell or Lantastic.  
  334.  
  335.  
  336.         1.4.5 So Many CD's       
  337.  
  338.         A  PCBoard PPE to handle off-line CD-Roms.  Seamlessly integrated
  339.         into  PCBoard.   Users  post requests for off-line files and have
  340.         then  returned  as  attachments to messages. Configurable message
  341.         pack-out  dates  automatically  keep  your hard disk from getting
  342.         cluttered.  Available now on our BBS.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  350.  
  351.  
  352.         Sep 01, 1996            KSP FTP (tm) v3.0                       4
  353.  
  354.  
  355.                         CHAPTER 2 - INSTALLATION        
  356.  
  357.  
  358.         Before installing KSP FTP as a BBS door, you must first install: 
  359.  
  360.              1.  The network interface hardware.  
  361.              2.  A corresponding packet driver.  
  362.              3.  A packet driver shim (if needed).  
  363.              4.  A packet multiplexer (if needed).  
  364.  
  365.         Detailed  directions for these preliminary steps are available in
  366.         separate   documentation   that   comes  with  the  corresponding
  367.         hardware or software.   
  368.  
  369.         It's  most  common  that multi-node BBS's are interconnected with
  370.         Ethernet  and  either  Lantastic or Novell.  Unfortunately, these
  371.         two  network  operating  systems  were  designed  using their own
  372.         proprietary  protocols  rather than the TCP/IP protocol and their
  373.         own  proprietary  software  rather than packet drivers to talk to
  374.         their  Ethernet  interface  cards.   However, a piece of software
  375.         called  a packet driver "shim" can be used to let both TCP/IP and
  376.         their proprietary protocol coexist.  
  377.  
  378.  
  379.         2.1 Packet Driver Shims for Novell     
  380.  
  381.         Novell's  network  software is installed in layers as TSRs in the
  382.         order  shown  below.   These commands are usually found either in
  383.         the  AUTOEXEC.BAT  file  or  in another batch file in a directory
  384.         typically called C:\NWCLIENT.  
  385.  
  386.              LSL
  387.              NE2000  }-- specific to your interface card
  388.              IPXODI
  389.              VLM
  390.  
  391.         The  packet driver shim (ODIPKT) logically sits on top of IPXODI,
  392.         providing  a  packet  driver  interface  for software such as KSP
  393.         FTP: 
  394.  
  395.              LSL
  396.              NE2000 +--- Frame Type (0-3)
  397.              IPXODI |
  398.              ODIPKT 2 97  }--- The packet driver shim
  399.              VLM       |
  400.                        +----- Packet Vector Interrupt (96-127)
  401.                               (See comment below about hex vs. decimal)
  402.  
  403.         The  ODIPKT  command  line parameters may vary according to which
  404.  
  405.  
  406.  
  407.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  408.  
  409.  
  410.         Sep 01, 1996            KSP FTP (tm) v3.0                       5
  411.  
  412.  
  413.         version  of  the  software  you  have  and  how  your hardware is
  414.         configured.   The "Frame Type" parameter should correspond to the
  415.         position  of  ETHERNET_II  among  the  frame  types  specified in
  416.         NET.CFG;  zero  (0)  selects  the  first  frame type, one (1) the
  417.         second,  and  so on.  The "Packet Vector Interrupt" number should
  418.         correspond  to  an  unused  interrupt  vector.   Note  that older
  419.         versions  of  ODIPKT  insist that this number be given in decimal
  420.         (96-127)  rather  than  in hex (0x60-0x7F).  The necessary packet
  421.         driver  shim can be downloaded from the Key Software Products BBS
  422.         as file ODI-SHIM.ZIP.   
  423.  
  424.  
  425.         2.2 Packet Driver Shim for Novell w/Token-RingSNAP    
  426.  
  427.         Another  shim  called  ODITRPKT  exists for Novell that should be
  428.         used  if the underlying network is Token-Ring_SNAP.  Installation
  429.         is  similar  to  ODIPKT as described above, except that the first
  430.         command  line  parameter  must  correspond to the Token-Ring_SNAP
  431.         frame  type  in NET.CFG, and starts at "1" rather than "0".  This
  432.         shim  can  be  downloaded  from  the Key Software Products BBS as
  433.         file TKN-SHIM.ZIP.  
  434.  
  435.  
  436.         2.3 Packet Driver Shims for Lantastic     
  437.  
  438.         Using   a   packet  driver  shim  with  Lantastic  requires  that
  439.         Lantastic  be  installed  using  NDIS  (Network  Driver Interface
  440.         Specification)  Support.  The necessary packet driver shim can be
  441.         downloaded   from   the   Key   Software  Products  BBS  as  file
  442.         DIS-SHIM.ZIP.  
  443.  
  444.         NDIS   allows  you  to  stack  multiple  protocols  on  a  single
  445.         adapter.   This  lets  you use multiple protocol drivers (such as
  446.         LANtastic  and  TCP/IP)  on  the  same adapter.  You can also use
  447.         NDIS  to  include  third-party adapters that have NDIS drivers in
  448.         your   LANtastic   network.    Supported  adapter  types  include
  449.         Ethernet,  Token-Ring  and ARCNET (R) adapters.  The software and
  450.         documentation  necessary  to  add  NDIS  support  to  an existing
  451.         Lantastic network is available free of charge from Artisoft.  
  452.  
  453.         Once  you  have NDIS installed and working with Lantastic, adding
  454.         the  shim is a simple matter of editing PROTOCOL.INI (part of the
  455.         NDIS support) and CONFIG.SYS.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  466.  
  467.  
  468.         Sep 01, 1996            KSP FTP (tm) v3.0                       6
  469.  
  470.  
  471.         2.3.1 Changes to CONFIG.SYS       
  472.  
  473.         With  NDIS  installed,  there  will be two device driver lines in
  474.         your CONFIG.SYS file that look something like the following: 
  475.  
  476.              DEVICE=C:\LANTASTI\PROTMAN.DOS /I:C:\LANTASTI
  477.              DEVICE=C:\LANTASTI\AEXNDIS.DOS
  478.  
  479.         The  file  listed  in  the  second line may differ if you are not
  480.         using  Artisoft's  interface  card; in that case, this file would
  481.         typically  be  replaced  by  a  NDIS  driver supplied by the card
  482.         manufacturer.  
  483.  
  484.         The  packet  driver  shim  itself  is installed as a third device
  485.         driver after the first two, as in: 
  486.  
  487.              DEVICE=C:\LANTASTI\PROTMAN.DOS /I:C:\LANTASTI
  488.              DEVICE=C:\LANTASTI\AEXNDIS.DOS
  489.              DEVICE=C:\DRIVERS\DIS_PKT.DOS  }--- The packet driver shim
  490.  
  491.  
  492.         2.3.2 Changes to PROTOCOL.INI       
  493.  
  494.         The  PROTOCOL.INI  file  is  a  text file created (usually in the
  495.         C:\LANTASTI  directory) as part of the NDIS installation.  Before
  496.         adding  the  packet  driver  shim,  it  typically  looks like the
  497.         following,  but  with  the  "iobase"  and  "interrupt" parameters
  498.         changed   according   to   your  hardware,  or  with  the  entire
  499.         "[AEXNDIS_NIF]"   section  replaced  if  you  are  not  using  an
  500.         Artisoft interface card.  
  501.  
  502.              [PROTMAN]
  503.                DRIVERNAME = PROTMAN$
  504.                DYNAMIC = YES
  505.  
  506.              [AEXNDIS_NIF]
  507.                DRIVERNAME = AEXNDS$
  508.                IOBASE = 0x300
  509.                INTERRUPT = 15
  510.  
  511.         Adding  the packet driver shim requires adding another section to
  512.         the PROTOCOL.INI file: 
  513.  
  514.              [PROTMAN]
  515.                DRIVERNAME = PROTMAN$
  516.                DYNAMIC = YES
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  524.  
  525.  
  526.         Sep 01, 1996            KSP FTP (tm) v3.0                       7
  527.  
  528.  
  529.              [AEXNDIS_NIF]               <---+
  530.                DRIVERNAME = AEXNDS$          |
  531.                IOBASE = 0x300                |
  532.                INTERRUPT = 15                | These names must match!
  533.                                              |
  534.              [PKTDRV]                        |
  535.                DRIVERNAME = PKTDRV$          |
  536.                BINDINGS = AEXNDIS_NIF    <---+
  537.                INTVEC = 0x61
  538.                CHAINVEC = 0x66
  539.                NOVELL = Y
  540.  
  541.         Note  that the name "AEXNDIS_NIF" must exactly match the spelling
  542.         used  as  the  title of the previous section, "[AEXNDIS_NIF]"; if
  543.         you  are not using Artisoft interface cards, then both occurences
  544.         will  use  some  other identifier.  The "INTVEC" parameter may be
  545.         anything  from  0x60  to 0x80; you may have to experiment to find
  546.         an unused interrupt number.  
  547.  
  548.  
  549.         2.4 Packet Driver Shims for Banyan Vines    
  550.  
  551.         Although  Key  Software  Products  has  never  used  it, and thus
  552.         cannot  offer help on its installation, a packet driver shim does
  553.         exist  for  Banyan  Vines  and  can  be  downloaded  from the Key
  554.         Software Products BBS as file BAN-SHIM.ZIP.  
  555.  
  556.  
  557.         2.5 Other Things to Configure      
  558.  
  559.         Once  your  network  is  up and running with a packet driver or a
  560.         packet driver shim, there are basically two additional steps: 
  561.  
  562.              1.  Create a WATTCP.CFG configuration file.  
  563.              2.  Configure KSP FTP as a BBS door.  
  564.  
  565.         As  discussed  in the next chapter, you may not need a WATTCP.CFG
  566.         configuration file if you have a BOOTP server.  
  567.  
  568.         There  is  a  useful  program called TCPINFO available on the KSP
  569.         BBS.   If  you have no WATTCP.CFG file, it will tell you (after a
  570.         maximum  of 30 seconds) if it was able to automatically configure
  571.         itself  via  a  BOOTP  server.  If you have a WATTCP.CFG file, it
  572.         will  determine  whether  or  not  you  have configured that file
  573.         properly.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  582.  
  583.  
  584.         Sep 01, 1996            KSP FTP (tm) v3.0                       8
  585.  
  586.  
  587.                  CHAPTER 3 - THE WATTCP CONFIGURATION FILE     
  588.  
  589.  
  590.         In  order  to  run,  KSP FTP needs to know some information about
  591.         your  network,  and  tries  to  find this in a configuration file
  592.         called  WATTCP.CFG.  KSP FTP looks in three directories to locate
  593.         this  file.   First, it checks for an environment variable called
  594.         WATTCP.CFG  that  specifies  the  directory.  Second, it looks in
  595.         the  current  (default) directory.  Third, if still not found, it
  596.         looks   in   the   directory   that   contains   the   executable
  597.         (KSP-FTP.EXE).   
  598.  
  599.         The  following  example  may  be  helpful  for  those  using  the
  600.         environment  variable  approach:  If you place WATTCP.CFG in your
  601.         PCB  directory,  then  your  AUTOEXEC.BAT file should contain the
  602.         following command: 
  603.  
  604.                               set WATTCP.CFG=C:\PCB
  605.  
  606.           Note that there is no trailing "\" after the directory name!
  607.  
  608.         If  KSP  FTP  still  can't  find  the configuration file, it will
  609.         attempt  to  automatically  configure  itself  by  looking  for a
  610.         "BOOTP"  server  on  your network.  (BOOTP is a standard protocol
  611.         that  obtains  your "IP address" and other information about your
  612.         PC  from  a  BOOTP  server.)   If there is no BOOTP server, or if
  613.         your  PC  is not registered in its database, then you must create
  614.         a configuration file.  
  615.  
  616.         The  configuration  file  contains  one entry per line.  A sample
  617.         configuration  file  is  included  in  this distribution, but the
  618.         values  MUST  be  modified to suit your particular environment or
  619.         else KSP FTP will not work!   
  620.  
  621.         The syntax of every entry follows the following format: 
  622.  
  623.            [ directive = [ "data" | data] ] [ # comment | ; comment ]
  624.  
  625.         I.e.,  if  a  directive is not followed by data, the directive is
  626.         ignored.   Similary,  lines  without directives are ignored.  The
  627.         directive is NOT case sensitive; the data IS case sensitive.   
  628.  
  629.         e.g.,   netmask=255.255.252.0
  630.                 domainslist=ksp.com    ; Our domain
  631.  
  632.         Whitespace  is normally removed from data; data containing blanks
  633.         must  be  surrounded by quotes.  An unquoted '#' or ';' marks the
  634.         beginning of a comment.  
  635.  
  636.  
  637.  
  638.  
  639.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  640.  
  641.  
  642.         Sep 01, 1996            KSP FTP (tm) v3.0                       9
  643.  
  644.  
  645.  
  646.         3.1 Multiple Nodes and the "include" Directive    
  647.  
  648.         There  must  be  one WATTCP.CFG file for each BBS node since each
  649.         node  has  to  be  configured  with  a  unique  hostname  and  IP
  650.         address.   All  other configuration parameters are usually set at
  651.         the  same  values  for  all nodes.  Rather than duplicating these
  652.         common  entries  in each WATTCP.CFG file, you can set-up a master
  653.         configuration   file   that   gets  "included"  in  each  of  the
  654.         node-specific   files.    For  example,  the  node-specific  file
  655.         (WATTCP.CFG) might look like: 
  656.  
  657.                 include=c:\ksp\master.cfg
  658.                 hostname=ourbbspc
  659.                 myip=125.283.210.17
  660.  
  661.         This  makes it much easier to make changes since you only have to
  662.         modify a single file (MASTER.CFG).  
  663.  
  664.  
  665.         3.2 Using a BOOTP Server      
  666.  
  667.         It's  always  a good idea to have a configuration file whether or
  668.         not   you   use   a  BOOTP  server.   If  you  choose  to  use  a
  669.         configuration  file  and want to tell it to use the BOOTP server,
  670.         this  option  allows  you  to specify your the IP address of your
  671.         BOOTP server.  
  672.  
  673.  
  674.                 Example: bootp=129.255.0.128 
  675.  
  676.         You  should  specify the domain name manually as described in the
  677.         next  section  since  the  BOOTP  protocol  doesn't  provide that
  678.         information.  
  679.  
  680.                 Example: domainslist=ksp.com 
  681.  
  682.         NOTE:  An  "IP  address"  is  a logical addressing scheme used on
  683.         TCP/IP  networks  such  as the Internet.  Each computer connected
  684.         to  the  Internet  is  assigned  a unique IP address.  Your local
  685.         network  "guru"  or access provider should be able to provide you
  686.         with those IP addresses you need.   
  687.  
  688.         IMPORTANT:  The  IP  addresses  given  in  this document are only
  689.         examples.   Do  NOT  attempt to use them - they will NOT work and
  690.         your network administrator will probably get VERY upset! 
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  698.  
  699.  
  700.         Sep 01, 1996            KSP FTP (tm) v3.0                      10
  701.  
  702.  
  703.         3.3 Manual Configuration        
  704.  
  705.         If  you  don't  have  a  BOOTP  server,  or  if  your  PC  is not
  706.         registered  with  a BOOTP server, then you must use the following
  707.         directives  to configure KSP FTP.  The values of these parameters
  708.         are  important,  and  KSP  FTP will NOT function properly without
  709.         the   proper   values.    If   you  are  not  familiar  with  the
  710.         terminology,  or  if  you are unsure of the proper values, please
  711.         consult with your network access provider.  
  712.  
  713.  
  714.         3.3.1 The PC's Host Name      
  715.  
  716.         This  is  the network name of the PC that runs your BBS (and thus
  717.         KSP  FTP).  If your BBS is implemented by a network of PC's, then
  718.         each PC should have its own unique host name.  
  719.  
  720.                 Example: hostname=bbs 
  721.  
  722.         Note  that  the  host  name  does  not  include  the  domain name
  723.         suffix.   For  example, the hostname of machine '"bbs.ksp.com" is
  724.         simply "bbs".  
  725.  
  726.  
  727.         3.3.2 The PC's Domain Name      
  728.  
  729.         This  is  the  network  name  of the subnet to which your PC (and
  730.         possibly others) are connected.  
  731.  
  732.                 Example: domainslist=ksp.com 
  733.  
  734.         Note  that  the  domain  name  does  not  include  the  host name
  735.         prefix.   For  example, the domain name of machine '"bbs.ksp.com"
  736.         is "ksp.com".  
  737.  
  738.  
  739.         3.3.3 The PC's IP Address      
  740.  
  741.         This is the unique IP address assigned to your PC.  
  742.  
  743.                 Example: my_ip=100.2.37.4  
  744.  
  745.         Your  local  network  "guru" or access provider should be able to
  746.         provide  you  with  the  proper IP address of your PC.  Note that
  747.         you  should  have  a  different  IP address for each node in your
  748.         BBS.  
  749.  
  750.         Note:  As  an  alternative, you may also set the IP address using
  751.         an environment variable, as in: 
  752.  
  753.  
  754.  
  755.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  756.  
  757.  
  758.         Sep 01, 1996            KSP FTP (tm) v3.0                      11
  759.  
  760.  
  761.  
  762.                               set ksp-ip=100.2.37.4
  763.  
  764.  
  765.         3.3.4 The Name Server's IP Address     
  766.  
  767.         This  is  the  unique  IP  address  assigned  to  a  network name
  768.         nerver.   You  may  specify more than on nameserver by using more
  769.         than one "nameserver" line.  
  770.  
  771.                 Example: nameserver=111.21.108.110 
  772.  
  773.         Your  local  network  "guru" or access provider should be able to
  774.         provide  you  with the proper IP addresses of appropriate network
  775.         name servers.  
  776.  
  777.  
  778.         3.3.5 The Router's IP Address      
  779.  
  780.         This is the unique IP address assigned to the network router.  
  781.  
  782.           Syntax: gateway = ipaddr [ , subnet [ , subnet_mask ] ] 
  783.  
  784.                 Examples: gateway=129.97.176.1
  785.                           gateway=129.97.176.2, 129.97.0.0
  786.                           gateway=129.97.176.2, 129.97.0.0, 255.255.0.0
  787.  
  788.         Usually  the  (destination)  subnet  and  subnet mask need not be
  789.         specified,  and  is  used to create a "default".  The other forms
  790.         are  used  to  specify  one or more other gatewaya for particular
  791.         subnets.  
  792.  
  793.         Your  local  network  "guru" or access provider should be able to
  794.         provide you with the proper IP address of the network router.  
  795.  
  796.  
  797.         3.3.6 The PC's Network Mask      
  798.  
  799.         Network  masks  are  used to distinguish destination IP addresses
  800.         that  are  on  the  local  subnet  from those that are not.  This
  801.         option may not be required, depending on your network topology.  
  802.  
  803.                 Example: netmask=255.255.254.0 
  804.  
  805.         Your  local  network  "guru" or access provider should be able to
  806.         provide you with the proper netmask if needed.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  814.  
  815.  
  816.         Sep 01, 1996            KSP FTP (tm) v3.0                      12
  817.  
  818.  
  819.         3.4 TCP/IP Parameters (optional)       
  820.  
  821.         KSP  FTP  will  work  without using the following parameters, but
  822.         they are provided if you wish to change them.  
  823.  
  824.  
  825.         3.4.1 DNS Search Mode       
  826.  
  827.         A  remote  hostname  (e.g.,  ralph.ksp.com) is translated into an
  828.         numeric  IP  addresse  (e.g.,  128.16.202.12)  by  a  nameserver.
  829.         Sometimes,  however,  users  enter  hostnames  in  an abbreviated
  830.         form.   For  example,  if  the local machine (e.g., ruby.ksp.com)
  831.         was   in   the   same   domain   (ksp.com)  as  the  remote  host
  832.         (ralph.ksp.com),  then  perhaps  only the remote hostname (ralph)
  833.         might  be given.  Short versions like this must be fully expanded
  834.         (e.g.,  ralph.ksp.com)  before  a  nameserver  can translate them
  835.         into an IP address.  
  836.  
  837.         Waterloo  TCP/IP  solves  this  by  feeding the nameserver with a
  838.         sequence  of  constructions  formed  from the remote hostname and
  839.         the  local machine's domainslist.  For a remote hostname given as
  840.         "a.b"  and  a  domainslist  specified  in  WATTCP.CFG  as  "c.d",
  841.         Waterloo  TCP/IP  would  attempt  name  server  lookups  first on
  842.         "a.b.c.d",  then  on  "a.b.d",  and then on "a.b".  Although this
  843.         approach  is  guaranteed to find the appropriate construction, it
  844.         can  waste  time  performing  nameserver  lookups  on  improbable
  845.         constructions.  
  846.  
  847.         Consider  the sequence of constructions attempted when the remote
  848.         hostname   is  "garbo.uwasa.fi"  and  the  local  domainslist  is
  849.         "ksp.com": 
  850.  
  851.                 (1) garbo.uwasa.fi.ksp.com      -> fails
  852.                 (2) garbo.uwasa.fi.com          -> fails
  853.                 (3) garbo.uwasa.fi              -> succeeds
  854.  
  855.         We've  modified  Waterloo  TCP/IP's search strategy to accelerate
  856.         name  server  lookups  by  adding three optional mode variations,
  857.         enabled   by   specifying   one   of   the  following  WATTCP.CFG
  858.         configuration parameters: 
  859.  
  860.         dns_search_mode=map_local_names 
  861.  
  862.             Abbreviated  (local)  hostnames  that do not contain a period
  863.             are   processed  in  the  normal  (Waterloo  TCP/IP)  manner.
  864.             Otherwise,  hostnames  like  "garbo.uwasa.fi"  are  attempted
  865.             immediately  without  modification.   This is the recommended
  866.             search mode.  
  867.  
  868.  
  869.  
  870.  
  871.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  872.  
  873.  
  874.         Sep 01, 1996            KSP FTP (tm) v3.0                      13
  875.  
  876.  
  877.         dns_search_mode=fully_specified 
  878.  
  879.             This  mode  passes  the  hostname  directly to the nameserver
  880.             without  modification.   I.e.,  it assumes that hostnames are
  881.             always  fully  specified  by  the  user without abbreviation.
  882.             Abbreviated   names  will  not  be  translated  and  will  be
  883.             returned by the nameserver as unknown.  
  884.  
  885.         dns_search_mode=recognized_root 
  886.  
  887.             Remote  hostnames  ending in the common domain suffixes (com,
  888.             edu,   gov,   mil,   net,  org,  nato,  arpa)  are  attempted
  889.             immediately  without  modification.   All other hostnames are
  890.             processed  in  the normal manner.  (Note that this mode is no
  891.             better  than  the  normal Waterloo TCP/IP strategy with names
  892.             like "garbo.uwasa.fi".) 
  893.  
  894.  
  895.         3.4.2 Timeouts         
  896.  
  897.         Most  network  operations (such as establishing a connection to a
  898.         remote  host)  have a maximum time before a timeout error occurs.
  899.         The  default  value is 30 seconds; a smaller value is unwise, but
  900.         larger   values   may   be   necessary   for   particularly   bad
  901.         connections.  
  902.  
  903.                 Example: sockdelay=40 
  904.  
  905.  
  906.         3.4.3 Maximum Segment Size (MSS)      
  907.  
  908.         The  default  value  of  MSS  is  1400.  If you know what maximum
  909.         segment  size  means  and know what size you want, you can change
  910.         it: 
  911.  
  912.                 Example: mss=512 
  913.  
  914.                 Note:  Some  Internet  access  providers  configure their
  915.                 dial-up  slip  and ppp accounts with a very small segment
  916.                 size.   You  may  need  to  set mss as low as 212 if your
  917.                 Internet connection is through such a connection.  
  918.  
  919.  
  920.         3.5 FTP Operating Parameters       
  921.  
  922.         The  remaining  parameters in WATTCP.CFG are operating parameters
  923.         for  KSP  FTP  that  define limits and display files needed while
  924.         KSP FTP is running.  Each follows the format: 
  925.  
  926.  
  927.  
  928.  
  929.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  930.  
  931.  
  932.         Sep 01, 1996            KSP FTP (tm) v3.0                      14
  933.  
  934.  
  935.                 ksp-ftp.<parameter>=<value> 
  936.  
  937.         where   <parameter>  and  <value>  are  replaced  by  appropriate
  938.         strings.  
  939.  
  940.         Some  operating  parameters have counterparts in other members of
  941.         the  KSP  family  of  network  application programs.  Rather than
  942.         have   multiple   entries   in   the  WATTCP.CFG  file  for  each
  943.         application,  such parameters can be specified globally using the
  944.         format: 
  945.  
  946.                 ksp.<parameter>=<value> 
  947.  
  948.         This  global setting can be overridden for a specific application
  949.         by  using  the  application-specific form at a subsequent line in
  950.         WATTCP.CFG.  
  951.  
  952.  
  953.         3.5.1 Dynamic Parameters        
  954.  
  955.         Configuration  file  parameters  can  be  made  "dynamic".   Such
  956.         parameters  are ignored unless activated by an associated command
  957.         line option: 
  958.  
  959.                 /CONFIG=<number> 
  960.  
  961.         where  "<number>"  is  a non-zero integer.  Dynamic configuration
  962.         parameters  are  those that specify a number in square backets as
  963.         in: 
  964.  
  965.                 ksp-ftp[<number>].<parameter>=<value> 
  966.  
  967.         The  number  specified  in the configuration parameter must match
  968.         that  in  the  command  line  option  or  else  the configuration
  969.         parameter will be ignored.  
  970.  
  971.         This also works for dynamic global parameters of the form: 
  972.  
  973.                 ksp[<number>].<parameter>=<value> 
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  988.  
  989.  
  990.         Sep 01, 1996            KSP FTP (tm) v3.0                      15
  991.  
  992.  
  993.         3.5.2 Retrieving Hostname of Remote Server     
  994.  
  995.          Syntax: ksp-ftp.retrieve_hostnames=<option> 
  996.  
  997.         Example: ksp-ftp.retrieve_hostnames=enabled 
  998.  
  999.         Purpose: If  enabled,  IP addresses of remote ftp servers will be
  1000.                  translated  into  hostnames using the domain name server
  1001.                  to  provide a reliable identification.  Affects both the
  1002.                  display and the log files.  
  1003.  
  1004.         Comment: Default is disabled.  
  1005.  
  1006.  
  1007.         3.5.3 Blocking Access to Certain Sites     
  1008.  
  1009.          Syntax: ksp-ftp.blocked_ip_list=<pathspec> 
  1010.  
  1011.         Example: ksp-ftp.blocked_ip_list=c:\ksp\blocked.lst 
  1012.  
  1013.         Purpose: Specifies  the  name of a text file containing a list of
  1014.                  blocked  IP  addresses.  No user access to sites on this
  1015.                  list will be allowed.  
  1016.  
  1017.  
  1018.         3.5.4 Allowing Access to a Limited Set of Sites  
  1019.  
  1020.          Syntax: ksp-ftp.allowed_ip_list=<pathspec> 
  1021.  
  1022.         Example: ksp-ftp.allowed_ip_list=c:\ksp\allowed.lst 
  1023.  
  1024.         Purpose: Specifies  the  name of a text file containing a list of
  1025.                  IP   addresses   to  which  the  users  are  allowed  to
  1026.                  connect.   No user access to sites not on this list will
  1027.                  be allowed.  
  1028.  
  1029.  
  1030.         3.5.5 Session Time Limit       
  1031.  
  1032.          Syntax: ksp-ftp.max_mins=<number> 
  1033.  
  1034.         Example: ksp-ftp.max_mins=30 
  1035.  
  1036.         Purpose: Overrides  the  time  remaining as specified in DOOR.SYS
  1037.                  if  lower.  If omitted, time remaining is that specified
  1038.                  by DOOR.SYS.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1046.  
  1047.  
  1048.         Sep 01, 1996            KSP FTP (tm) v3.0                      16
  1049.  
  1050.  
  1051.         3.5.6 Session Reserve Time       
  1052.  
  1053.          Syntax: ksp-ftp.reserve_mins=<number> 
  1054.  
  1055.         Example: ksp-ftp.reserve_mins=3 
  1056.  
  1057.         Purpose: Reduces  the  time available in the door so that if time
  1058.                  runs  out,  the  user  still  has a small amount of time
  1059.                  left  on  the BBS.  This is useful, for example, if your
  1060.                  BBS  offers  a  Time  Bank  so  that users can use it to
  1061.                  withdraw extra time.  
  1062.  
  1063.  
  1064.         3.5.7 Inactivity Limit        
  1065.  
  1066.          Syntax: ksp-ftp.idle_mins=<minutes> 
  1067.  
  1068.         Example: ksp-ftp.idle_mins=10 
  1069.  
  1070.         Purpose: Establishes  an  upper limit on how long the session can
  1071.                  remain  inactive  before  it is terminated.  If omitted,
  1072.                  no inactivity limit is imposed.  
  1073.  
  1074.  
  1075.         3.5.8 Minimum Baud Rate       
  1076.  
  1077.          Syntax: ksp-ftp.minbaud=<baudrate>[,<security>] 
  1078.  
  1079.         Example: ksp-ftp.minbaud=9600 
  1080.  
  1081.         Example: ksp-ftp.minbaud=9600,100 
  1082.  
  1083.         Purpose: Specifies  a  minimum  baud  rate  required  to  use the
  1084.                  gateway,  and  an  optional  security  level required to
  1085.                  override  the minimum baud rate.  If omitted, no minimum
  1086.                  baud rate will be required.  
  1087.  
  1088.  
  1089.         3.5.9 Operating Hours        
  1090.  
  1091.          Syntax: ksp-ftp.ophours=<hh:mm-hh:mm> 
  1092.  
  1093.         Example: ksp-ftp.ophours=21:00-23:00 
  1094.  
  1095.         Purpose: To  establish  the  hours  of operation for the gateway;
  1096.                  attempts  to  use  the  gateway  at  other times will be
  1097.                  disallowed.    Times   must  be  specified  in  24  hour
  1098.                  format.   If  omitted,  the  gateway  may be used at any
  1099.                  time.  
  1100.  
  1101.  
  1102.  
  1103.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1104.  
  1105.  
  1106.         Sep 01, 1996            KSP FTP (tm) v3.0                      17
  1107.  
  1108.  
  1109.  
  1110.         Note: If  start  time  is  after  the  stop  time,  the  hours of
  1111.               operation  will  be  interpreted  as  all  but those in the
  1112.               window  specified.   I.e.,  setting  ophours to 03:20-03:00
  1113.               will allow operation anytime except 03:00-03:20.  
  1114.  
  1115.  
  1116.         3.5.10 User Session Logging       
  1117.  
  1118.          Syntax: ksp-ftp.log_dir=<pathspec> 
  1119.  
  1120.         Example: ksp-ftp.log_dir=c:\ksp-ftp 
  1121.  
  1122.         Purpose: Specifies  the  name  of a directory where a log of user
  1123.                  sessions   will  be  kept.   The  log  files  are  named
  1124.                  KSP-FTP.???, where "???" is the BBS node number.  
  1125.  
  1126.  
  1127.         3.5.11 Non-Standard Port/Fossil Break Detect      
  1128.  
  1129.          Syntax: ksp-ftp.serial_port=<adr>,<irq> 
  1130.  
  1131.         Example: ksp-ftp.serial_port=3F8,5 
  1132.  
  1133.         Purpose: Used  to  override serial port and IRQ values implied by
  1134.                  "COMx"    in    DOOR.SYS    to    support   non-standard
  1135.                  configurations  that  are  NOT  using  a  fossil driver.
  1136.                  Also  used  WITH  a  fossil  driver  to add serial break
  1137.                  detection.  
  1138.  
  1139.                  The  port  address  <adr>  must be specified in hex, and
  1140.                  the   interrupt   request  line  number  <irq>  must  be
  1141.                  specified in decimal.  
  1142.  
  1143.  
  1144.         3.5.12 Adding External Protocols       
  1145.  
  1146.          Syntax: ksp-ftp.protocol=<letter>,<T|F>,<title> 
  1147.  
  1148.         Example: ksp-ftp.protocol=S,T,SEALink 
  1149.  
  1150.         Purpose: KSP  FTP  provides internal support for the Xmodem-Cksm,
  1151.                  Xmodem-CRC,  1K-Xmodem,  1K-Xmodem/G,  Ymodem, Ymodem/G,
  1152.                  and  Zmodem  protocols.   However, additional "external"
  1153.                  protocols  can  be added using this option.  (Be sure to
  1154.                  read  the  chapter:  "SELECTING  A  SERIAL COMMUNICATION
  1155.                  PROTOCOL").  
  1156.  
  1157.         Internal  protocols  do  not  require  the use of BBS disk space.
  1158.  
  1159.  
  1160.  
  1161.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1162.  
  1163.  
  1164.         Sep 01, 1996            KSP FTP (tm) v3.0                      18
  1165.  
  1166.  
  1167.         KSP  FTP simply reformats the data blocks during a transfer: data
  1168.         transmitted  between the BBS and the remote host use FTP's TCP/IP
  1169.         protocol;  data  transmitted  between  the BBS and the user use a
  1170.         modem-to-modem protocol.  
  1171.  
  1172.         External  protocols  are  implemented  by other programs that KSP
  1173.         FTP   loads  and  executes.   These  programs  implement  only  a
  1174.         modem-to-modem  protocol and designed to transfer a file from the
  1175.         disk  out  over  a telephone line or vice-versa.  Therefore, when
  1176.         using  an external protocol to transfer a file from a remote host
  1177.         to  the  user,  KSP  FTP first transfers the entire file from the
  1178.         remote  host  to the BBS disk using TCP/IP, and then executes the
  1179.         external  protocol  to  transmit  the  disk  file  to  the  user.
  1180.         Uploads  to  a remote host using an external protocol do the same
  1181.         but in reverse.  
  1182.  
  1183.         Each  external  protocol requires that you create two batch files
  1184.         (explained   later)   and  specify  three  parameters  using  the
  1185.         "ksp-ftp.protocol" configuration option: 
  1186.  
  1187.            <letter>        The letter used to select the protocol.
  1188.  
  1189.            <T|F>           "T" if the protocol supports batch transfers.
  1190.  
  1191.            <title>         A short identifying phrase.
  1192.  
  1193.         NOTE:  The  following  letters  are  used  to  identify  internal
  1194.         protocols.   If  one  of  these letters is used with this option,
  1195.         the  external  protocol  will  replace the corresponding internal
  1196.         protocol.  
  1197.  
  1198.            X       Xmodem-Cksm
  1199.            C       Xmodem-CRC
  1200.            O       1K-Xmodem
  1201.            F       1K-Xmodem/G (download only)
  1202.            Y       Ymodem
  1203.            G       Ymodem/G    (download only)
  1204.            Z       Zmodem
  1205.  
  1206.         The  two  batch  files  must  be located in the same directory as
  1207.         KSP-FTP.EXE,  and  must  be named "KSPFTPR?.BAT" (for receiving a
  1208.         file  from  the  caller) and KSPFTPS?.BAT" (for sending a file to
  1209.         the  caller)  where  the  "?"  is  replaced  by  the  identifying
  1210.         protocol  letter.  For example, if you use the letter 'K' for the
  1211.         Kermit  protocol,  the  corresponding  batch  files must be named
  1212.         KSPFTPRK.BAT and KSPFTPSK.BAT.  
  1213.  
  1214.         KSP-FTP calls the batch files with four parameters: 
  1215.  
  1216.  
  1217.  
  1218.  
  1219.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1220.  
  1221.  
  1222.         Sep 01, 1996            KSP FTP (tm) v3.0                      19
  1223.  
  1224.  
  1225.         For  protocols  that  do  not  support  batch  transfers (such as
  1226.         X-Modem),  the  first  parameter  (%1) is simply a filespec.  For
  1227.         batch   protocols,  this  parameter  is  a  directory  name  when
  1228.         receiving.   When  sending,  it  is  an  "at-sign"  followed by a
  1229.         filespec;  the named file contains a list of other filespecs (one
  1230.         per line) to be sent.  
  1231.  
  1232.         The  second  parameter  (%2)  is  simply a number identifying the
  1233.         serial port, e.g., "1" for COM1.  
  1234.  
  1235.         The  third  (%3)  and  fourth (%4) parameters are the modem-to-PC
  1236.         (DTE) and carrier (DCE) speeds, respectively.  
  1237.  
  1238.  
  1239.         3.5.13 Controlling Disk Space Usage      
  1240.  
  1241.          Syntax: ksp-ftp.mb_external=<megabytes> 
  1242.  
  1243.         Example: ksp-ftp.mb_external=10 
  1244.  
  1245.         Purpose: To  limit the amount of BBS temporary disk space used by
  1246.                  external protocols for file transfers.  
  1247.  
  1248.                  When  a  user  downloads a file from a remote host using
  1249.                  an  external  protocol,  the  entire  file must first be
  1250.                  transferred  to  a  temporary directory on the BBS disk.
  1251.                  Since  filenames  can  be requested using wildcards, and
  1252.                  since  TCP/IP  transfer  rates  approach 1 MB/Sec, it is
  1253.                  quite  possible  that  one request could quickly consume
  1254.                  all  of  the  BBS disk space.  This option prevents that
  1255.                  from happening! 
  1256.  
  1257.                  If  this  option  is  specified, the user is informed at
  1258.                  the  beginning  of a external protocol transfer how much
  1259.                  disk  space  may  be  used  for the temporary storage of
  1260.                  transferred  files.   KSP FTP will then monitor how much
  1261.                  disk  space  is actually used and abort the remainder of
  1262.                  the request if the limit is exceeded.  
  1263.  
  1264.  
  1265.         3.5.14 Limiting User Download Bytes      
  1266.  
  1267.          Syntax: ksp-ftp.kb_limit=BBS | <kilobytes> 
  1268.  
  1269.         Example: ksp-ftp.kb_limit=BBS Example: ksp-ftp.kb_limit=2048 
  1270.  
  1271.         Purpose: Limit   the   number   of  kilobytes  that  a  user  may
  1272.                  download.   If set to "BBS" as in the first example show
  1273.                  above,  the  limit  is  that imposed by the user's quota
  1274.  
  1275.  
  1276.  
  1277.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1278.  
  1279.  
  1280.         Sep 01, 1996            KSP FTP (tm) v3.0                      20
  1281.  
  1282.  
  1283.                  controlled  by  the  BBS.   If set to a number as in the
  1284.                  second  example,  the  number  will  be  the  number  of
  1285.                  kilobytes  per  FTP  session  -  regardless  of how many
  1286.                  times  the  user  enters  the  KSP FTP door while logged
  1287.                  into the BBS.  
  1288.  
  1289.  
  1290.         3.5.15 Updating BBS Download Bytes      
  1291.  
  1292.          Syntax: ksp-ftp.download_report=<filespec> 
  1293.  
  1294.         Example: ksp-ftp.download_report=c:\ksp\download.dat 
  1295.  
  1296.         Purpose: Records  the  number  of bytes downloaded during the FTP
  1297.                  session  in  a file whose name (optionally preceded by a
  1298.                  drive  and directory prefix) is given in the option.  If
  1299.                  the  file  already  exists, it will be erased before the
  1300.                  new  information is recorded.  The format of the file is
  1301.                  extremely  simple:  one  line  of  text  containing  the
  1302.                  decimal number of bytes that were downloaded.  
  1303.  
  1304.                  The  data recorded in the file can be used to update the
  1305.                  user's   download   allocation.    However,  since  each
  1306.                  manufacturer's  BBS software is different from the next,
  1307.                  it  is  the  sysop's  responsibility  to  write  a small
  1308.                  program  that  will  take  the  content of this file and
  1309.                  modify the BBS's database.  
  1310.  
  1311.  
  1312.         3.5.16 Silencing the BBS console bell     
  1313.  
  1314.          Syntax: ksp-ftp.local_bell=<option> 
  1315.  
  1316.         Example: ksp-ftp.local_bell=disabled 
  1317.  
  1318.         Purpose: Used to silence the bell on the local BBS console.  
  1319.  
  1320.  
  1321.         3.5.17 Disabling the Local Screen      
  1322.  
  1323.          Syntax: ksp-ftp.local_screen=<option> 
  1324.  
  1325.         Example: ksp-ftp.local_screen=disabled 
  1326.  
  1327.         Purpose: Improves  caller's  display  speed  by  displaying  only
  1328.                  prompts   and   user   response  on  local  BBS  screen.
  1329.                  Eliminates   local   display   of   directory   or  file
  1330.                  contents.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1336.  
  1337.  
  1338.         Sep 01, 1996            KSP FTP (tm) v3.0                      21
  1339.  
  1340.  
  1341.                  Note:  Pressing Shift-F1 on the local console of the BBS
  1342.                  while   a  caller  is  in  the  door  will  toggle  this
  1343.                  setting.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1394.  
  1395.  
  1396.         Sep 01, 1996            KSP FTP (tm) v3.0                      22
  1397.  
  1398.  
  1399.                  CHAPTER 4 - INSTALLING THE FTP DOOR COMMAND    
  1400.  
  1401.  
  1402.         Install  KSP  FTP  as  you  would  any other door program on your
  1403.         BBS.   Be  sure  you  setup the BBS to create a DOOR.SYS file for
  1404.         KSP  FTP  when it runs.  (KSP FTP does not need a USER.SYS file.)
  1405.         If  you are running multiple BBS nodes accessing a single copy of
  1406.         the  file  KSP-FTP.EXE,  then  don't  forget  to  make  that file
  1407.         read-only  using the DOS ATTRIB command in order to avoid sharing
  1408.         conflicts.  
  1409.  
  1410.         Most  BBS's  use  a  batch  file  to run a door.  For example, on
  1411.         PCBoard  systems  you might create a door batch file called "FTP"
  1412.         containing simply: 
  1413.  
  1414.                 C:\FTP\KSP-FTP 
  1415.                 BOARD 
  1416.  
  1417.         Do  NOT  change  directories  within  this  batch  file!  KSP FTP
  1418.         expects  to  find  the  DOOR.SYS  file in whatever is the default
  1419.         directory  at  the  moment it starts to run.  That's why the name
  1420.         of  the  program  is preceeded by the name of the directory where
  1421.         it is located.  
  1422.  
  1423.         Of  course, you must also configure your BBS so it knows where to
  1424.         find this batch file (FTP).  
  1425.  
  1426.  
  1427.         4.1 Command Line Parameters       
  1428.  
  1429.         In   PCBoard,  "%PCBDOOR%"  is  replaced  by  the  value  of  the
  1430.         environment  variable  called  "PCBDOOR"  which  is  set  to  the
  1431.         command  line  parameters  (if any) entered with the door command
  1432.         before  exiting  to  run  the  door.   For  example,  the PCBoard
  1433.         command: 
  1434.  
  1435.                 FTP scuacc.scu.edu 
  1436.  
  1437.         sets  the  environment  variable  "PCBDOOR"  to  "scuacc.scu.edu"
  1438.         before  exiting  to  run  the  door.  Effectively, the batch file
  1439.         "FTP" becomes: 
  1440.  
  1441.                 KSP-FTP scuacc.scu.edu 
  1442.                 BOARD 
  1443.  
  1444.         If  a  host  name or IP address is given (as above), KSP FTP will
  1445.         automatically  connect  to  that host at startup, and will return
  1446.         to  the  BBS  as  soon  as the session with that host is finished
  1447.         (e.g., the user logs out).  
  1448.  
  1449.  
  1450.  
  1451.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1452.  
  1453.  
  1454.         Sep 01, 1996            KSP FTP (tm) v3.0                      23
  1455.  
  1456.  
  1457.  
  1458.         If  no  command  line parameter is given, KSP FTP will prompt the
  1459.         user  for  the host name when the door starts to run.  Unlike the
  1460.         situation  described  above,  when  the user logs out of a remote
  1461.         host,  control  is  returned  to KSP FTP command mode so that the
  1462.         user can then connect to a different host.  
  1463.  
  1464.         A  second  (third)  command  line  parameter  may  be provided to
  1465.         specify  the  login  name (password).  I.e., the complete command
  1466.         line syntax is: 
  1467.  
  1468.             KSP-FTP [<name_or_IP> [<login_name> [login_password]]] 
  1469.  
  1470.         where the square brackets "[]" indicate optional parameters.  
  1471.  
  1472.         There  are  three  additional command line parameters that may be
  1473.         used: 
  1474.  
  1475.  
  1476.         4.1.1 The /SCRIPT Parameter       
  1477.  
  1478.         The  /SCRIPT  parameter is used to specify a text file to be used
  1479.         as  command  line  input.  This feature allows the SysOp to build
  1480.         BBS  commands that can (for example) automatically download a set
  1481.         of  predetermined  files to the caller from some remote ftp site.
  1482.         The syntax is: 
  1483.  
  1484.                 /SCRIPT=<filespec> 
  1485.  
  1486.         where   "<filespec>"   is  replaced  by  a  filename,  optionally
  1487.         preceded by a drive letter and/or directory name, as in: 
  1488.  
  1489.                 /SCRIPT=D:\KSP\SCRIPT.FTP 
  1490.  
  1491.  
  1492.         4.1.2 The /MAXMINS Parameter       
  1493.  
  1494.         The  /MAXMINS  parameter  is an alternative to the same parameter
  1495.         that  appears  in  the  WATTCP.CFG  file.   It  provides  another
  1496.         mechanism  for  limiting  the maximum time a caller is allowed in
  1497.         the door.  The syntax is: 
  1498.  
  1499.                 /MAX_MINS=<minutes> 
  1500.  
  1501.         where "<minutes>" is replaced by a number, as in: 
  1502.  
  1503.                 KSP-FTP scuacc.scu.edu /MAX_MINS=60 
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1510.  
  1511.  
  1512.         Sep 01, 1996            KSP FTP (tm) v3.0                      24
  1513.  
  1514.  
  1515.         4.1.3 The /CONFIG Parameter       
  1516.  
  1517.         The  /CONFIG  parameter  is  used  in  conjunction with "dynamic"
  1518.         configuration  parameters  to  enable  or  disable  them.   For a
  1519.         complete  description  of  this  feature,  please see the section
  1520.         called "Dynamic Parameters".  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526.  
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1568.  
  1569.  
  1570.         Sep 01, 1996            KSP FTP (tm) v3.0                      25
  1571.  
  1572.  
  1573.                    CHAPTER 5 - INSTALLING YOUR ACCESS KEY     
  1574.  
  1575.  
  1576.         The  unlicensed  version of KSP FTP limits each user to a maximum
  1577.         of  five  minutes  per  session.   To remove this limit, you must
  1578.         purchase  an  access  key and install it as described below; once
  1579.         installed,  users will be limited only by their time remaining on
  1580.         the BBS.  
  1581.  
  1582.         There  are  three  parameters  that  must  be  specified  in  two
  1583.         environment  variables  called "KSP-ID" and "KSP-FTP" in order to
  1584.         install  your access key; the access key will not be validated if
  1585.         any parameter is missing.  
  1586.  
  1587.         The  environment  variable  "KSP-ID"  is used to specify your BBS
  1588.         name, as in: 
  1589.  
  1590.                       set ksp-id=Key Software Products BBS
  1591.  
  1592.         The  environment variable "KSP-FTP" is used to specify the number
  1593.         of BBS nodes and your access key separated by a semicolon as in: 
  1594.  
  1595.                              set ksp-ftp=2;12345678
  1596.  
  1597.         The  access  key  is  derived  from  the name of your BBS and the
  1598.         number   of   BBS  nodes.   The  specified  key  must  match  the
  1599.         combination  of BBS name and nodes.  If not, or if you invoke KSP
  1600.         FTP  on  a node whose node number is greater than indicated, then
  1601.         the caller will be limited to five minutes per session.  
  1602.  
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608.  
  1609.  
  1610.  
  1611.  
  1612.  
  1613.  
  1614.  
  1615.  
  1616.  
  1617.  
  1618.  
  1619.  
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1626.  
  1627.  
  1628.         Sep 01, 1996            KSP FTP (tm) v3.0                      26
  1629.  
  1630.  
  1631.             CHAPTER 6 - SELECTING A SERIAL COMMUNICATION PROTOCOL    
  1632.  
  1633.  
  1634.         There  are  certain  tradeoffs  that  affect  the  selection of a
  1635.         serial  communications protocol for use with KSP FTP.  The choice
  1636.         affects   the   use  of  BBS  disk  space  and/or  file  transfer
  1637.         reliability.   After  reading  this  chapter,  you  may  wish  to
  1638.         prepare  a  bulletin  for  your users to help them understand the
  1639.         issues.  
  1640.  
  1641.  
  1642.         6.1 Internal Protocols        
  1643.  
  1644.         Most  serial  communications  protocols are designed with timeout
  1645.         limits  of ten seconds or less.  However, file transfers over the
  1646.         Internet  can  sometimes incur delays much greater than this, and
  1647.         affects   the   reliability   of   KSP   FTP's   internal  serial
  1648.         communications protocols.  
  1649.  
  1650.  
  1651.         6.1.1 Internal Xmodem and Ymodem Protocols     
  1652.  
  1653.         Most  Xmodem  and  Ymodem protocols (except the /G variants) wait
  1654.         for  an  acknowledgement  (ACK)  after each block of data that is
  1655.         transmitted.   If  the ACK does not arrive within a predetermined
  1656.         timeout  period,  the  block  is  retransmitted.  The entire file
  1657.         transfer  is  aborted  after  a  predetermined number of un-ACK'd
  1658.         retransmissions.  
  1659.  
  1660.         Most  implementations  of  Xmodem  and Ymodem employ a timeout of
  1661.         around  ten  seconds, but network delays can sometimes be greater
  1662.         than  this  and  can  cause  retransmission even though the first
  1663.         attempt  was received correctly.  These extra retransmissions may
  1664.         unnecessarily cause the file transfer to be aborted.  
  1665.  
  1666.         Some  communications  programs  offer  "relaxed timing" on Xmodem
  1667.         and  Ymodem.   This increases the timeout threshold, and may help
  1668.         if long network delays are a problem.  
  1669.  
  1670.  
  1671.         6.1.2 Internal 1K-Xmodem/G and Ymodem/G Protocols     
  1672.  
  1673.         The  Ymodem/G  and  1K-Xmodem/G  protocols  transmit one block of
  1674.         data  after  another  without  waiting  for  an ACK, depending on
  1675.         error-correcting  modems  for  reliability.  They work as long as
  1676.         the  receiver  can keep up with arriving data; if the receiver is
  1677.         busy  doing  something  else,  data  is  lost and the entire file
  1678.         transfer  gets corrupted.  For this reason, KSP FTP restricts the
  1679.         use  of  these  two internal protocols to downloads only; uploads
  1680.  
  1681.  
  1682.  
  1683.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1684.  
  1685.  
  1686.         Sep 01, 1996            KSP FTP (tm) v3.0                      27
  1687.  
  1688.  
  1689.         would fail due to occassional network delays.  
  1690.  
  1691.  
  1692.         6.1.3 Internal Zmodem Protocol       
  1693.  
  1694.         Network  delays  can  affect  Zmodem  uploads  the  same way they
  1695.         affect  Xmodem  and  Ymodem  as discussed above.  However, Zmodem
  1696.         downloads  are  not  affected  in  this  manner  due to a special
  1697.         feature of the Zmodem protocol.  
  1698.  
  1699.         Unlike  Xmodem  and  Ymodem,  Zmodem  data  blocks  are  variable
  1700.         length.     To    prevent   receiver   timeouts,   the   internal
  1701.         implementation  of  Zmodem  in KSP FTP transmits zero-length data
  1702.         blocks  during  periods of long network delay, thus resetting the
  1703.         receiver's timeout clock.  
  1704.  
  1705.  
  1706.         6.2 External Protocols        
  1707.  
  1708.         Downloading  a  file  using  an  external  protocol is a two-step
  1709.         process.   First  the file is transferred from the remote host to
  1710.         the  BBS  using  TCP/IP,  creating  a temporary file on the local
  1711.         disk  of the BBS.  Then KSP FTP runs the external protocol driver
  1712.         to  transfer  the  file  from  the  BBS  to  the user.  After the
  1713.         transfer  is  complete, the temporary file is deleted.  Uploading
  1714.         using an external protocol is the reverse process.  
  1715.  
  1716.         External  protocols  are  not affected by long time delays during
  1717.         network  transfers,  and  are  thus inherently more reliable than
  1718.         internal  protocols.   However,  since  TCP/IP transfers occur at
  1719.         very  high  rates,  temporary  disk  space  utilization  can grow
  1720.         dramatically   unless  controlled  with  the  ksp-ftp.mb_external
  1721.         configuration parameter.  
  1722.  
  1723.  
  1724.         6.3 Recommendations         
  1725.  
  1726.         Of  all the internal protocols, Zmodem (downloads) are by far the
  1727.         most reliable (see above).  
  1728.  
  1729.         If  you  are more concerned about reliability than disk space, we
  1730.         recommend  replacing  all internal protocols by external protocol
  1731.         drivers.  
  1732.  
  1733.         If  you  can't  afford  the  temporary  disk space, then internal
  1734.         protocols are the only choice.  
  1735.  
  1736.         If  you  can  afford  the  disk space, we recommend offering both
  1737.         internal  and  external  protocols,  since each type offers their
  1738.  
  1739.  
  1740.  
  1741.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1742.  
  1743.  
  1744.         Sep 01, 1996            KSP FTP (tm) v3.0                      28
  1745.  
  1746.  
  1747.         own  particular  benefit:  internal  protocols are faster because
  1748.         they  avoid  transfering  the  file twice, but external protocols
  1749.         are  more  reliable.   You may even choose to offer both internal
  1750.         and  external versions of the same protocols; if you do, it would
  1751.         be  appropriate to prepare a help file or bulletin to explain why
  1752.         to your users.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.  
  1775.  
  1776.  
  1777.  
  1778.  
  1779.  
  1780.  
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.  
  1789.  
  1790.  
  1791.  
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1800.  
  1801.  
  1802.         Sep 01, 1996            KSP FTP (tm) v3.0                      29
  1803.  
  1804.  
  1805.                         APPENDIX 1 - HOW TO REACH US     
  1806.  
  1807.  
  1808.         The  Key Software Products BBS/FAX number (415-364-9847) operates
  1809.         24   hours   a   day,  7  days  a  week.   Software  at  our  end
  1810.         automatically  determines whether an incoming call is data or FAX
  1811.         and will operate accordingly.  
  1812.  
  1813.         If  you have access to electronic mail, you can send us a message
  1814.         via any of the following: 
  1815.  
  1816.         On COMPUSERVE, send mail to:
  1817.  
  1818.                 >Internet:tech.support@ksp.com
  1819.  
  1820.         On Internet, UUCP, or Bitnet, send mail to:
  1821.  
  1822.                 tech.support@ksp.com
  1823.  
  1824.         On Fidonet, address mail to "UUCP" at nearest fidonet site which
  1825.         provides a gateway to Internet, such as 1:105/42.
  1826.  
  1827.                 1st line of message: To: tech.support@ksp.com
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1858.  
  1859.  
  1860.         Sep 01, 1996            KSP FTP (tm) v3.0                      30
  1861.  
  1862.  
  1863.                 APPENDIX 2 - GETTING UPDATES VIA THE INTERNET    
  1864.  
  1865.  
  1866.         The  main  distribution  file  is KSPFTP??.ZIP, where "??" is the
  1867.         version  number.  You can retrieve this file via anonymous ftp at
  1868.         "scizzl.scu.edu",  directory "ksp".  Please note that there is no
  1869.         "e"  at  the  end  of "scizzl".  This file is also available from
  1870.         the KSP BBS.  
  1871.  
  1872.  
  1873.  
  1874.  
  1875.  
  1876.  
  1877.  
  1878.  
  1879.  
  1880.  
  1881.  
  1882.  
  1883.  
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  
  1889.  
  1890.  
  1891.  
  1892.  
  1893.  
  1894.  
  1895.  
  1896.  
  1897.  
  1898.  
  1899.  
  1900.  
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1916.  
  1917.  
  1918.         Sep 01, 1996            KSP FTP (tm) v3.0                      31
  1919.  
  1920.  
  1921.                          APPENDIX 3 - LEGAL STUFF       
  1922.  
  1923.  
  1924.                                 LIMITED WARRANTY
  1925.  
  1926.         This  software  is provided 'as is' without warranty of any kind,
  1927.         either  expressed  or  implied, including, but not limited to the
  1928.         implied   warranties   of   merchantability  and  fitness  for  a
  1929.         particular  purpose.   The  entire  risk  as  to  the quality and
  1930.         performance of the program is with you.  
  1931.  
  1932.         Some  states do not allow the exclusion of implied warranties, so
  1933.         the  above  exclusions may not apply to you.  This warranty gives
  1934.         you  specific  legal  rights  and  you may also have other rights
  1935.         which vary from state to state.  
  1936.  
  1937.         Key  Software  Products  has  taken  due  care  in  preparing the
  1938.         documentation  and  software  included  in   to  ascertain  their
  1939.         correctness  and  effectiveness.   However, Key Software Products
  1940.         does  not  warrant  that  operation  of  this  software  will  be
  1941.         uninterrupted  or  error  free.   In  no event shall Key Software
  1942.         Products  be  liable  for  incidental or consequential damages in
  1943.         connection  with  or  arising out of the furnishing, performance,
  1944.         or use of this software.  
  1945.  
  1946.  
  1947.                                      LICENSE
  1948.  
  1949.         You  MAY  use  this software on any computer or computers in your
  1950.         possession.   The licensed version is registered for use on up to
  1951.         a  fixed  number of BBS nodes running on multiple machines and/or
  1952.         multiple multi-tasking processes.  
  1953.  
  1954.         You  MAY  copy this software into any machine readable or printed
  1955.         form  for  backup or modification purposes in support of your use
  1956.         of the software.  
  1957.  
  1958.         You  MAY  distribute  the original unmodified, unlicensed version
  1959.         of  this  software,  but you may not charge a fee exceeding $5.00
  1960.         to  cover  the  cost of duplicating, shipping, and handling.  You
  1961.         may NOT distribute a licensed version of this software.  
  1962.  
  1963.         You  may  NOT  use,  copy, modify, sublicense, assign or transfer
  1964.         this  software  and  its license, or any copy or modification, in
  1965.         whole  or  in  part,  except  as  expressly  provided for in this
  1966.         license.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.         Copyright (C) 1995-96, Key Software Products. All Rights Reserved
  1974.  
  1975.